import java.awt.*; import java.applet.*; import java.awt.event.*; //NEW IMPORT STATEMENT import java.awt.geom.*; public class KeyListenerApplet extends Applet implements KeyListener { public int charX; //character's x coordinate public int charY; //character's y coordinate public void init() { setBackground(Color.orange); addKeyListener(this); charX = 100; //starting X location charY = 100; //starting Y location } public void paint(Graphics g) { Graphics2D g2D = (Graphics2D)g; //Draw character based on charX and charY //Head Ellipse2D.Double head = new Ellipse2D.Double(charX-10, charY-10, 20, 20); g2D.fill(head); //Body g2D.drawLine(charX, charY, charX, charY + 40); //Arms g2D.drawLine(charX, charY+15, charX-10, charY+12); g2D.drawLine(charX, charY+15, charX+10, charY+12); //Legs g2D.drawLine(charX, charY+40, charX-15, charY+60); g2D.drawLine(charX, charY+40, charX+15, charY+60); } public void keyPressed(KeyEvent e) { if (e.getKeyCode() == 37) //if left arrow is down { charX = charX - 10; } else if(e.getKeyCode() == 38) //if up arrow is down { charY = charY - 10; } else if(e.getKeyCode() == 39) //if right arrow is down { charX = charX + 10; } else if(e.getKeyCode() == 40) //if down arrow is down { charY = charY + 10; } repaint(); } public void keyReleased(KeyEvent e) { //BLANK - NOT NEEDED } public void keyTyped(KeyEvent e) { //BLANK - NOT NEEDED } }